package com.cbtx.module_sp.bean;

import android.content.Context;

import com.xinchao.machine.digital_advertise.IBaseMachine;

/**
 * author : joker.peng
 * e-mail : joker@fiture.com
 * date   : 2021/6/10 5:38 PM
 * desc   :
 */
public interface IMachine extends IBaseMachine {

    Context getContext();

    boolean isRoot();

    String getResolutions(int screenNum);

    String getTemperature();

    String getFirstLine(String filePath);

    String firstLine2Number(String firstLine);

    /**
     * 产品型号
     *
     * @return
     */
    String getProductType();

    /**
     * 获取ip地址
     * 有线或无线->内网ip
     * 4G->运营商下发的ip
     *
     * @return
     */
    String getIp();

    /**
     * 温度
     *
     * @return
     */
    String getHumidity();

    /**
     * 总存储(M)
     *
     * @return
     */
    String getTotalExternalMemorySize();

    /**
     * 剩余空间大小（M）
     *
     * @return
     */
    String getAvailableExternalMemorySize();

    /**
     * 获取imsi
     *
     * @return
     */
    String getIMSI();

    /**
     * 设置开关机
     *
     * @param on
     * @param off
     * @return
     */
    boolean setTimingSwitch(String on, String off);

    /**
     * 安装app
     *
     * @param filePath
     */
    void installApk(String filePath);

    /**
     * 清空定时开关机
     */
    void clearTimingSwitch();

    /**
     * 截屏
     *
     * @param displayId   屏幕 id
     * @param pngFileName 全文件名，必须为 PNG 后缀，如：/sdcard/main.png
     */
    void screenCap(int displayId, String pngFileName);

    /**
     * 截主屏
     *
     * @param pngFileName 全文件名，必须为 PNG 后缀，如：/sdcard/main.png
     */
    void screenCap(String pngFileName);

    /**
     * TV 添加进程白名单
     */
    void updateKeepRunningFile();

    /**
     * 不同TV文件路径不同
     *
     * @return
     */
    String getKeepRunningFile();

    /**
     * 不同TV文件路径不同
     *
     * @return
     */
    String getKeepBackgroundFile();
}
